Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Nordea Open - Bastad U.S. Open - New York Bratislava 2 Challenger Australian Open - Melbourne Ottignies-Louvain-la-Neuve Challenger BNP Paribas Open - Indian Wells Ostrava Challenger Internazionali BNL d'Italia - Rome Almaty Open - Almaty BNP Paribas Open - Indian Wells Tiriac Open - Bucharest French Open - Paris Wimbledon - London U.S. Open - New York Brazil F24 Bosnia & Herzegovina F2 Croatia F8 Bosnia/Herzegovina F6 Brazil F25 Brazil F26 Bosnia/Herzegovina F1 Bosnia & Herzegovina F2 Brazil F15 Brazil F16 Brazil F17 Croatia F7 Brazil F30 Croatia F8 Brazil F31 Brazil F33 Brazil F34 Brazil F3 Brazil F4 Brazil F5 Israel F3 Croatia F1 Croatia F2 Brazil F9 Italy F6 Italy F7 Brazil F12 Brazil F13 Bosnia & Herzegovina F2 Brazil F14 Bosnia & Herzegovina F3 Brazil F15 Bosnia & Herzegovina F5 Argentina F7 Serbia F1 Argentina F8 Serbia F2 Argentina F9 Serbia F3 Brazil F25 Brazil F26 Serbia F7 Colombia F4 Croatia F7 Colombia F5 Croatia F8 Croatia F9 Croatia F10 Brazil F33 Croatia F13 Brazil F36 Croatia F14 Brazil F38 Brazil F39 Turkey F32 Turkey F33 Turkey F3 Turkey F4 Croatia F1 Brazil F8 Italy F1 Italy F2 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Brazil F10 Brazil F11 Bosnia & Herzegovina F5 Italy F20 Brazil F23 Brazil F27 Croatia F11 Croatia F12 Brazil F30 Turkey F2 Croatia F1 Croatia F2 Italy F1 Italy F5 Bulgaria F1 Romania F3 Bosnia & Herzegovina F4 Serbia F3 Croatia F12 Brazil F29 Brazil F22 Croatia F12 Italy F7 (Santa Margherita Di Pula) Italy F9 (Santa Margherita Di Pula) Italy F15 (Reggio Emilia) Spain F16 (Huelva) M25 Irpin M25 La Marsa M25+H Plaisir M25+H Lajeado Sarajevo Challenger Curitiba Challenger Brasilia Challenger Salvador Challenger Sao Paulo Challenger Santiago Challenger Campinas Challenger Recife Challenger Florianopolis Challenger Santiago Challenger Sarajevo Challenger Santos Challenger Rio Quente Challenger Arad Challenger Brasov Challenger Cali Challenger Belem Challenger Rio De Janeiro Challenger Montevideo Challenger Pereira Challenger Santos Challenger Rio Quente Challenger Rome Challenger Prostejov Challenger Kosice Challenger Poznan Challenger Sao Paulo Challenger Montevideo Challenger Sao Paulo Challenger Tour Finals Sao Paulo Challenger Ostrava Challenger Kosice Challenger Padova Challenger Todi Challenger San Benedetto Challenger Poznan Challenger Tampere Challenger Cortina Challenger San Marino Challenger Genova Challenger Cordoba Challenger Geneva Challenger Bratislava Challenger Guayaquil Challenger Helsinki Challenger Sao Paulo Challenger Tour Finals Noumea Challenger Santo Domingo Challenger Morelos Challenger Santiago Challenger San Luis Potosi Challenger Mersin Challenger Samarkand Challenger Vicenza Challenger Mestre Challenger Lexington Challenger Aptos Challenger Pereira Challenger Casablanca Challenger Guayaquil Challenger Buenos Aires Challenger Rio De Janeiro Challenger Bucaramanga Challenger Sarasota Challenger Prostejov Challenger Furth Challenger Blois Challenger Alphen Challenger Mohammedia Challenger Santiago Challenger Buenos Aires Challenger Francavilla Challenger Santo Domingo Challenger Quito Challenger Campinas Challenger Cali Challenger Lima Challenger Rio De Janeiro Challenger Newport Beach Challenger Tallahassee Challenger Savannah Challenger Vicenza Challenger Shymkent Challenger L'Aquila Challenger Prague Challenger Cordenons Challenger Lima Challenger Burnie Challenger Yokohama Challenger Zhuhai Challenger Zhangjiagang Challenger Sarasota Challenger Tallahassee Challenger Samarkand Challenger Milan Challenger Amersfoort Challenger Tampere Challenger Aptos Challenger Vancouver Challenger Cordenons Challenger L'Aquila Challenger New Haven Challenger Banja Luka Challenger Buenos Aires Challenger Campinas Challenger Santo Domingo Challenger Lima Challenger Guayaquil Challenger Bratislava Challenger Bendigo Challenger Punta Del Este Challenger Morelos Challenger Columbus Challenger Monterrey Challenger Forli Challenger Barcelona Challenger Lisbon Challenger Campinas Challenger Belgrade Challenger Rome 2 Challenger Trieste Challenger Barcelona Challenger Bratislava Challenger Rio De Janeiro Challenger Lugano Challenger Mauthausen Challenger Santo Domingo Challenger Banja Luka Challenger Sibiu Challenger Yokohama Challenger Noumea Challenger Vilnius Challenger Antalya Challenger Szekesfehervar Challenger Zadar Challenger Ostrava Challenger Tunis Challenger Heilbronn Challenger Bratislava 1 Challenger Mallorca Challenger Helsinki Challenger Manama Challenger Barletta Challenger Split Challenger Tunis Challenger Zagreb Challenger Bergamo Challenger Bucaramanga Challenger Como Challenger Santos Challenger Ilkley Challenger Ostrava Challenger Kazan Challenger Bogota Challenger Campos do Jordao Challenger Blumenau Challenger Kenitra Challenger Santiago Challenger Furth Challenger Banja Luka Challenger San Luis Potosi Challenger Binghamton Challenger Alphen Challenger Sao Paulo Challenger Bratislava Challenger San Benedetto Challenger Milan Challenger Campinas Challenger San Juan Challenger Istanbul Challenger Mexico City Challenger Sarasota Challenger Mohammedia Challenger Montevideo Challenger Ortisei Challenger Sarasota Challenger Montevideo Challenger Todi Challenger Blois Challenger Liberec Challenger Pullach Challenger Florianopolis Challenger Bendigo Challenger Buenos Aires Challenger Lille Challenger Montemar Challenger Savannah Challenger Aix En Provence Challenger Poznan Challenger Montevideo Challenger Oeiras 3 Challenger Cortina Challenger Split Challenger Cary Challenger Liberec Challenger Nottingham 2 Challenger Salzburg-Anif Challenger Poznan Challenger Floridablanca Challenger Banja Luka Challenger Tulln Challenger Zug Challenger Salzburg Challenger Matsuyama Challenger Kobe Challenger Porto Alegre Challenger Montevideo Challenger Caltanissetta Challenger Brasil Open - Costa do Sauipe Studena Croatia Open - Umag Brasil Open - Sao Paulo Copa Claro - Buenos Aires Mercedes Cup - Stuttgart Copa Claro - Buenos Aires Rio Open 500 - Rio de Janeiro Open 13 - Marseille Brasil Open - Sao Paulo Kremlin Cup - Moscow Ecuador Open - Quito PBZ Zagreb Indoors - Zagreb Grand Prix Hassan II - Casablanca US Men's Clay Court Championship - Houston Geneva Open - Geneva Campinas Challenger Citi Open - Washington Winston-Salem Open - Winston-Salem Argentina Open - Buenos Aires Delray Beach Open - Delray Beach TEB BNP Paribas Istanbul Open - Istanbul Brasil Open - Sao Paulo TEB BNP Paribas Istanbul Open - Istanbul Bet-at-home Open - Hamburg Abierto Mexicano - Los Cabos St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen China Open - Beijing Kremlin Cup - Moscow Dubai Duty Free Tennis Championships - Dubai Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo Erste Bank Open - Vienna Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Abierto Mexicano de Tenis Mifel - Los Cabos Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Florionapolis Challenger Zhuhai Open - Zhuhai China Open - Beijing Kremlin Cup - Moscow Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Open Sud de France - Montpellier New York Open - New York Delray Beach Open - Delray Beach Lima Challenger Abierto Mexicano Telcel - Acapulco bett1HULKS Championships - Cologne Astana Open - Nur-Sultan Hamburg European Open - Hamburg Plava Laguna Croatia Open - Umag Open Sud de France - Montpellier Maia Challenger Open 13 Provence - Marseille Recife Challenger Grand Prix Hassan II - Marrakech Serbia Open - Belgrade BMW Open - Munich Qatar ExxonMobil Open - Doha Rosario Challenger Millennium Estoril Open - Estoril Aberto de Santa Catarina de Tenis - Florianopolis Erste Bank Open - Vienna Sao Paulo Challenger Bucaramanga Challenger Japan Open Tennis Championships - Tokyo Sao Paulo Challenger Cap Cana Challenger Poznan Challenger Danderyd Challenger San Marino Challenger Cordenons Challenger Zadar Challenger Lermontov Challenger Sao Paulo Challenger Arad Challenger Banja Luka Challenger Trnava Challenger Campinas Challenger Porto Alegre Challenger Sao Jose Do Rio Preto Challenger Porto Alegre Challenger Brest Challenger Arad Challenger Bratislava 2 Challenger Mohammedia Challenger Cordenons Challenger Medellin Challenger Meknes Challenger Cali Challenger Tashkent Challenger Lyon Challenger Andria Challenger Sao Paulo Challenger Heilbronn Challenger Canberra Challenger Caltanissetta Challenger Moscow Challenger Sarajevo Challenger Alphen Challenger Santiago Challenger Medellin Challenger Lima Challenger Nottingham 2 Challenger St. Remy Challenger Mendoza Challenger Buenos Aires Challenger Manacor Challenger Barranquilla Challenger Irving Challenger Guadalajara Challenger Bordeaux Challenger Vicenza Challenger Caltanissetta Challenger Cyclus Open de Tenis - Florianopolis Binghamton Challenger Lexington Challenger Granby Challenger Gatineau Challenger Monterrey Challenger Casablanca Challenger Las Vegas Challenger Guayaquil Challenger Barletta Challenger Lisbon Challenger Milan Challenger Sibiu Challenger Almaty Challenger Campos do Jordao Challenger Phoenix Challenger Trnava Challenger Guayaquil Challenger Launceston Challenger Stockton Challenger Campinas Challenger Shenzhen Challenger Parma Challenger Perugia Challenger Samarkand Challenger BH Indoor Sarajevo - Sarajevo Cleveland Challenger Marbella Challenger Nottingham 1 Challenger Braunschweig Challenger Meerbusch Challenger Sibiu Challenger Bergamo Challenger Helsinki Challenger Quimper Challenger Forli 5 Challenger Buenos Aires Challenger Cordenons Challenger Meerbusch Challenger Orleans Challenger Sao Leopoldo Challenger Columbus Challenger Prague 2 Challenger Como Challenger Istanbul Challenger Blois Challenger Sao Paulo Challenger Ismaning Challenger Noumea Challenger Canberra Challenger Bucaramanga Challenger Sao Leopoldo Challenger Irving Challenger Tiburon Challenger Montevideo Challenger Buenos Aires Challenger Cherbourg Challenger Braunschweig Challenger Bonn Challenger Santo Domingo Challenger Mersin Challenger Salinas Challenger Kenitra Challenger Noumea Challenger Salinas Challenger Kosice Challenger ATP Challenger Tour Finals Santiago Challenger Blunmenau Challenger Campinas Challenger Liberec Challenger Santiago Challenger Rio De Janeiro Challenger Porto Alegre Challenger Buenos Aires Challenger Stockholm Open - Stockholm Timisoara Challenger Casablanca Challenger Concepcion Challenger Konzum Croatia Open - Umag ABN AMRO World Tennis Tournament - Rotterdam Credit Agricole Suisse Open - Gstaad Ludwigshafen Challenger Open 13 Provence - Marseille Astana Open - Astana Rio Open - Rio de Janeiro Cordoba Open - Cordoba Argentina Open - Buenos Aires Abierto Mexicano Telcel - Acapulco Nordea Open - Bastad Plava Laguna Croatia Open - Umag Banja Luka Open - Banja Luka Bucaramanga Challenger Plava Laguna Croatia Open - Umag If Stockholm Open - Stockholm Brisbane International - Brisbane Hangzhou Open - Hangzhou BRD Nastase Tiriac Trophy - Bucharest Winston-Salem Open - Winston-Salem BNP Paribas Open - Indian Wells Aircel Chennai Open - Chennai Argentina Open - Buenos Aires Sony Open Tennis - Miami Brasil Open - Sao Paulo Rio Open - Rio de Janeiro TEB BNP Paribas Istanbul Open - Istanbul Sao Paulo Challenger Hamburg Open - Hamburg Itajai Challenger Vegeta Croatia Open - Umag BNP Paribas Open - Indian Wells Barcelona Open Banc Sabadell - Barcelona Miami Open - Miami Qatar ExxonMobil Open - Doha Apia International - Sydney Garanti Koza Sofia Open - Sofia Memphis Open - Memphis Rio Open - Rio de Janeiro Abierto Mexicano Telcel - Acapulco Miami Open - Miami Brasil Open - Sao Paulo Monte-Carlo Rolex Masters - Monte-Carlo US Men's Clay Court Championship - Houston BRD Nastase Tiriac Trophy - Bucharest Internazionali BNL d'Italia - Rome Open de Nice Cote d'Azur - Nice Western & Southern Open - Cincinnati Aegon Nottingham Open - Nottingham BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Winston-Salem Open - Winston-Salem Moselle Open - Metz Shanghai Rolex Masters - Shanghai Kremlin Cup - Moscow Panama City Challenger Erste Bank Open - Vienna Ecuador Open - Quito Garanti Koza Sofia Open - Sofia Monte-Carlo Rolex Masters - Monte-Carlo Memphis Open - Memphis Mutua Madrid Open - Madrid Rio Open - Rio de Janeiro Internazionali BNL d'Italia - Rome Delray Beach Open - Delray Beach Dubai Duty Free Tennis Championships - Dubai Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Hungarian Open - Budapest BNP Paribas Masters - Paris Open Parc - Lyon Konzum Croatia Open - Umag Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Internazionali BNL d'Italia - Rome Winston-Salem Open - Winston-Salem Western & Southern Open - New York Erste Bank Open - Vienna Brisbane International - Brisbane Miami Open - Miami Sydney International - Sydney Open Sud de France - Montpellier Ecuador Open - Quito ABN AMRO World Tennis Tournament - Rotterdam Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Open 13 Provence - Marseille Brasil Open - Sao Paulo Gazprom Hungarian Open - Budapest TEB BNP Paribas Istanbul Open - Istanbul AEGON Championships - London Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Abierto Mexicano - Los Cabos Orbetello Challenger St. Petersburg Open - St. Petersburg Brasil Open - Sao Paulo Shanghai Rolex Masters - Shanghai Mutua Madrid Open - Madrid Qatar ExxonMobil Open - Doha ABN AMRO World Tennis Tournament - Rotterdam VTR Open - Vina del Mar Geneva Open - Geneva Open Parc - Lyon Serbia Open - Belgrade St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Anytech365 Andalucia Open - Marbella Australian Open - Melbourne Chile Dove Men+Care Open - Santiago Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne Stockholm Open - Stockholm French Open - Paris Firenze Open - Florence Wimbledon - London Open Sud de France - Montpellier U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Zagreb Challenger U.S. Open - New York Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Australian Open - Melbourne French Open - Paris Bucharest Open - Bucharest Wimbledon - London U.S. Open - New York Australian Open - Melbourne Belgrade Open - Belgrade Adelaide International - Adelaide Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Movistar Chile Open - Santiago U.S. Open - New York Boss Open - Stuttgart Mallorca Championships - Mallorca Australian Open - Melbourne Hangzhou Open - Hangzhou French Open - Paris U.S. Open - New York Australian Open - Melbourne German Tennis Championships - Hamburg U.S. Open - New York Australian Open Qualifying - Doha Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Dubai Duty Free Tennis Championships - Dubai Kremlin Cup - Moscow Argentina Open - Buenos Aires Aircel Chennai Open - Chennai Bet-at-home Open - Hamburg PBZ Zagreb Indoors - Zagreb Wimbledon - London U.S. Open - New York Australian Open - Melbourne Cincinnati Open - Cincinnati National Bank Open - Toronto BNP Paribas Open - Indian Wells BNP Paribas Masters - Paris Miami Open - Miami Rogers Cup - Toronto Mutua Madrid Open - Madrid Miami Open - Miami Internazionali BNL d'Italia - Rome Australian Open - Melbourne Wimbledon - London French Open - Paris French Open - Paris Wimbledon - London French Open - Paris Davis Cup, Europe/Africa Group II, 2R, EST-BIH 2-3 BNP Paribas Open - Indian Wells Davis Cup, Group II, 3R, DEN-BIH 3-2 Davis Cup, Group II, 2R, BLR-BIH 4-1 Davis Cup, Group II, 2R, FIN-BIH 2-3 Davis Cup, Group II, 1R, BIH-LUX 4-1 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 French Open - Paris Davis Cup, Group II, 2R, BIH-MDA 1-3 Davis Cup, Group II, 1R, BIH-GRE 3-1 Davis Cup, Group I, 2R, ECU-BRA 1-3 Davis Cup, Group II, 3R, BIH-LTU 2-3 Davis Cup, Group I, 2R, BIH-NED 1-3 Davis Cup, World Group, PO, JPN-BRA 3-1 BNP Paribas Open - Indian Wells Davis Cup, Group II, 2R, BIH-TUR 3-1 Davis Cup, Group II, 3R, LTU-BIH 0-5 Davis Cup, World Group, QR, AUS-BIH 4-0 Davis Cup, Group I, 1R, PER-BIH 3-2 Davis Cup, Group I, PO, TUN-BIH 1-3 Davis Cup, Group I, 1R, BIH-MEX 3-1 Davis Cup, Group II, 1R, ZIM-BIH 1-4 Davis Cup, Group I, 2R, SVK-BIH 2-3 Davis Cup, World Group, PO, SWE-BIH 3-1 Davis Cup, Group I, 1R, BIH-GER 0-4 Davis Cup, Group I, 2R, COL-BRA 3-2 Davis Cup, Group I, PO, BUL-BIH 1-3 Davis Cup, World Group I, 1R, TPE-BIH 3-2 Davis Cup, Group I, 1R, ECU-BIH 3-2 Davis Cup, World Group I, PO, BIH-RSA 3-1 Davis Cup, Group I, 1R, BIH-POL 5-0 Wimbledon (juniors) Australian Open (juniors) French Open (juniors) All Lower level tournaments French Open (juniors) U.S. Open (juniors) U.S. Open (juniors) Olympics - Rio de Janeiro Davis Cup, Group I, PO, UZB-BIH 1-3 Wimbledon (juniors)